package com.cs.beneficios.business.entity;

import com.cs.beneficios.business.model.BeneficiarioVO;
import com.cs.beneficios.business.model.InterfazMELVO;
import com.cs.beneficios.common.ConnectionFactory;
//import java.sql.BatchUpdateException;
import java.sql.Connection;
//import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
//import java.util.ArrayList;
//import java.util.Collection;
//import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
//import java.util.Vector;
//import java.sql.PreparedStatement;
//import java.util.Iterator;

public class InterfazMELDAO
{
 /**
   * Conexion a la base de datos.
   */
  private Connection conn = null;
  private ConnectionFactory cf;

  /**
   * Constructor que inicializa la conexion con la base de datos.
   * @param conn Conexion con la base de datos.
   */
  public InterfazMELDAO(ConnectionFactory cf ) {
    this.cf = cf;
    try{
      this.conn = this.cf.getConnection();
    }catch(SQLException e){}
  }
  
  
  public List getCamposGenericos(BeneficiarioVO bene) throws SQLException
  {
    List campos = new LinkedList();
    String query = "select * from vcs_ben_mel_campos_basicos ";
    if(bene.getTipoDocumento() != null && !bene.getTipoDocumento().equalsIgnoreCase("")
    && bene.getNumeroDocumento() != null && !bene.getNumeroDocumento().equalsIgnoreCase(""))
    {
      query += "where numerodocumento='"+bene.getNumeroDocumento()+"' and tipodocumento = '"+bene.getTipoDocumento()+"'";
      ResultSet rst = null;
      rst = cf.getRecordsRset(query,null,conn);
      InterfazMELVO campo = null;
      while ( rst.next() ) 
      {
          campo = new InterfazMELVO();
          campo.setNumeroDocumento(rst.getString( "NUMERODOCUMENTO"));
          campo.setTipoDocumento(rst.getString( "TIPODOCUMENTO"));
          campo.setCedulaAcu(rst.getString("CEDACU"));
          campo.setCedulaMadre(rst.getString("CEDMADRE"));
          campo.setCedulaPadre(rst.getString("CEDPADRE"));
          campo.setDirInstitucion(rst.getString("DIR_INSTITUCION"));
          campo.setDirSede(rst.getString("DIRECCION_SEDE"));
          campo.setGrado(rst.getString("GRADO"));
          campo.setJornada(rst.getString("JORNADA"));
          campo.setMailInstitucion(rst.getString("EMAIL_INSTITUCION"));
          campo.setNomAcu(rst.getString("NOMACU"));
          campo.setNomInstitucion(rst.getString("nombre_institucion"));
          campo.setNomMadre(rst.getString("NOMMADRE"));
          campo.setNomPadre(rst.getString("NOMPADRE"));
          campo.setNomSede(rst.getString("nombre_sede"));
          campo.setTelAcu(rst.getString("AL_TELE_RESI_ACUD"));
          campo.setTelInstitucion(rst.getString("TELS_INSTITUCION"));
          campo.setTelMadre(rst.getString("TELMADRE"));
          campo.setTelPadre(rst.getString("TELPADRE"));
          campo.setTelSede(rst.getString("TELEFONO_SEDE"));
          campo.setNucleo(rst.getString("NUCLEO"));
          campo.setNivelSisben(rst.getString("AL_NIVE_SISB"));
          campo.setPuntajeSisben(rst.getString("AL_PUNT_SISB"));
          campos.add(campo);
          campo=null;
      }
      rst.close();
     
    }
    return campos;
  }
  
  
  public Connection getConn()
  {
    return conn;
  }
  
}